﻿using System;
using System.Collections.Generic;
using System.Text;

namespace RaisingStudio.Data.Entities.MSPetShop4
{
    public partial class _Inventory : RaisingStudio.Data.Expressions.TableExpression
    {
        #region Constructor (s) / Destructor
        /// <summary>
        /// Constructor (s) / Destructor.
        /// </summary>
        public _Inventory() : base("Inventory")
        {
        }
        #endregion
        #region Members
        public static readonly RaisingStudio.Data.Expressions.ColumnExpression _ItemId = "ItemId";
        public readonly RaisingStudio.Data.Expressions.ColumnExpression ItemId = _ItemId;
        public static readonly RaisingStudio.Data.Expressions.ColumnExpression _Qty = "Qty";
        public readonly RaisingStudio.Data.Expressions.ColumnExpression Qty = _Qty;

		#endregion
    }

    partial class Inventory
    {
        #region Members
        public static readonly _Inventory _ = new _Inventory();

        public static RaisingStudio.Data.Expressions.ConditionExpression All
        {
            get
            {
                return new RaisingStudio.Data.Expressions.ConditionExpression();
            }
        }

        public static RaisingStudio.Data.Expressions.ColumnExpression[] Columns
        {
            get
            {
                return new RaisingStudio.Data.Expressions.ColumnExpression[]
                        {
                            _Inventory._ItemId,
                            _Inventory._Qty,
                        };
            }
        }

        public static RaisingStudio.Data.Expressions.ColumnExpression[] Except(params RaisingStudio.Data.Expressions.ColumnExpression[] columns)
        {
            List<RaisingStudio.Data.Expressions.ColumnExpression> columnList = new List<RaisingStudio.Data.Expressions.ColumnExpression>(Columns);
            if ((columns != null) && (columns.Length > 0))
            {
                foreach (RaisingStudio.Data.Expressions.ColumnExpression column in columns)
                {
                    columnList.Remove(column);
                }
            }
            return columnList.ToArray();
        }
		#endregion
    }
}
